< previous page page_340 next page >

Page 340
Unearthing Existing Implementations of Business Rules
Discovering business and domain rules lies at the heart of what every application developer does when analyzing, designing, and programming. Unearthing new rules is an activity ideally suited for interviewing users and creating use cases as a result of the interviews. However, not all rules are known to the users collectively.
Some rules are as dynamic as the organizations for which they exist. If you've developed applications for others besides yourself, recall how they wanted to change rules periodically. The longer an application is used by users, the more the rules the application originally enforced change. This is why users implement a lot of workarounds and hacks with older applications. As a result, you have to unearth these kinds of existing rules in order to understand how to solve the same problem given the new rules. Truly, some rules are meant to be broken, and the applications have to adjust accordingly.
Modeling the Business Rules Subsystem Object Model
Throughout this book, you have already seen a number of sequence diagrams that showed the steps involved in each use case. These sequence diagrams, in effect, show you the interaction of the business classes (or candidate classes if they have not been well-defined yet). To reproduce them here would be redundant. Feel free to revisit them.
Modeling the Business Rules Subsystem Class Hierarchy Model
Although there have been some class diagrams introduced with a subset of the classes involved in the Business Rules Subsystem, it would be helpful now to see them in their entirety. It is safe to do this here because the Second Bank of Carrollton example is quite simple, with a relatively small number of classes.
Figure 15.1 shows the major packages of classes that are typical in a banking organization. Banking class packages were used as part of the ongoing Second Bank of Carrollton example. Figure 15.2 shows the business classes that make up the family of bank products for the Second Bank of Carrollton. Figure 15.3 is a diagram illustrating the class in the Business Rules Subsystem. The next section describes the classes and packages in the subsystem.

 
< previous page page_340 next page >

If you like this book, buy it!